package mobile.game.common.net;
                    
import mobile.game.core.Service;
import mobile.game.core.gen.proxy.RPCImplBase;
import mobile.game.common.net.ConnectionProxy.EnumCall;
import mobile.game.core.support.function.*;
import java.util.List;
import mobile.game.core.Chunk;
import mobile.game.core.support.ConnectionStatus;
import mobile.game.core.gen.JowGenFile;

@SuppressWarnings("all")
@JowGenFile
public final class ConnectionImpl extends RPCImplBase {
	
	/**
	 * 获取函数指针
	 */
	@Override	
	public Object getMethodFunction(Service service, int methodKey) {
		Connection serv = (Connection)service;
		switch (methodKey) {
			case EnumCall.MOBILE_GAME_COMMON_NET_CONNECTION_CLOSEIMMEDIATE: {
				return (JowFunction0)serv::closeImmediate;
			}
			case EnumCall.MOBILE_GAME_COMMON_NET_CONNECTION_GETIPADDRESS: {
				return (JowFunction0)serv::getIpAddress;
			}
			case EnumCall.MOBILE_GAME_COMMON_NET_CONNECTION_SENDMSG_INT_CHUNK: {
				return (JowFunction2<Integer, Chunk>)serv::sendMsg;
			}
			case EnumCall.MOBILE_GAME_COMMON_NET_CONNECTION_SENDMSG_LIST_LIST: {
				return (JowFunction2<List, List>)serv::sendMsg;
			}
			case EnumCall.MOBILE_GAME_COMMON_NET_CONNECTION_STATUSUPDATE_STRING_STRING: {
				return (JowFunction2<String, String>)serv::statusUpdate;
			}
			case EnumCall.MOBILE_GAME_COMMON_NET_CONNECTION_STATUSUPDATE_CONNECTIONSTATUS: {
				return (JowFunction1<ConnectionStatus>)serv::statusUpdate;
			}
			default: break;
		}
		return null;
	}

}
